/*
 * XML Type:  SignonResponse
 * Namespace: http://ofx.net/types/2003/04
 * Java type: net.ofx.types.x2003.x04.SignonResponse
 *
 * Automatically generated - do not modify.
 */
package net.ofx.types.x2003.x04.impl;
/**
 * An XML SignonResponse(@http://ofx.net/types/2003/04).
 *
 * This is a complex type.
 */
public class SignonResponseImpl extends org.apache.xmlbeans.impl.values.XmlComplexContentImpl implements net.ofx.types.x2003.x04.SignonResponse
{
    
    public SignonResponseImpl(org.apache.xmlbeans.SchemaType sType)
    {
        super(sType);
    }
    
    private static final javax.xml.namespace.QName STATUS$0 = 
        new javax.xml.namespace.QName("", "STATUS");
    private static final javax.xml.namespace.QName DTSERVER$2 = 
        new javax.xml.namespace.QName("", "DTSERVER");
    private static final javax.xml.namespace.QName USERKEY$4 = 
        new javax.xml.namespace.QName("", "USERKEY");
    private static final javax.xml.namespace.QName TSKEYEXPIRE$6 = 
        new javax.xml.namespace.QName("", "TSKEYEXPIRE");
    private static final javax.xml.namespace.QName LANGUAGE$8 = 
        new javax.xml.namespace.QName("", "LANGUAGE");
    private static final javax.xml.namespace.QName DTPROFUP$10 = 
        new javax.xml.namespace.QName("", "DTPROFUP");
    private static final javax.xml.namespace.QName DTACCTUP$12 = 
        new javax.xml.namespace.QName("", "DTACCTUP");
    private static final javax.xml.namespace.QName FI$14 = 
        new javax.xml.namespace.QName("", "FI");
    private static final javax.xml.namespace.QName SESSCOOKIE$16 = 
        new javax.xml.namespace.QName("", "SESSCOOKIE");
    
    
    /**
     * Gets the "STATUS" element
     */
    public net.ofx.types.x2003.x04.Status getSTATUS()
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.Status target = null;
            target = (net.ofx.types.x2003.x04.Status)get_store().find_element_user(STATUS$0, 0);
            if (target == null)
            {
                return null;
            }
            return target;
        }
    }
    
    /**
     * Sets the "STATUS" element
     */
    public void setSTATUS(net.ofx.types.x2003.x04.Status status)
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.Status target = null;
            target = (net.ofx.types.x2003.x04.Status)get_store().find_element_user(STATUS$0, 0);
            if (target == null)
            {
                target = (net.ofx.types.x2003.x04.Status)get_store().add_element_user(STATUS$0);
            }
            target.set(status);
        }
    }
    
    /**
     * Appends and returns a new empty "STATUS" element
     */
    public net.ofx.types.x2003.x04.Status addNewSTATUS()
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.Status target = null;
            target = (net.ofx.types.x2003.x04.Status)get_store().add_element_user(STATUS$0);
            return target;
        }
    }
    
    /**
     * Gets the "DTSERVER" element
     */
    public java.lang.String getDTSERVER()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_element_user(DTSERVER$2, 0);
            if (target == null)
            {
                return null;
            }
            return target.getStringValue();
        }
    }
    
    /**
     * Gets (as xml) the "DTSERVER" element
     */
    public net.ofx.types.x2003.x04.DateTimeType xgetDTSERVER()
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.DateTimeType target = null;
            target = (net.ofx.types.x2003.x04.DateTimeType)get_store().find_element_user(DTSERVER$2, 0);
            return target;
        }
    }
    
    /**
     * Sets the "DTSERVER" element
     */
    public void setDTSERVER(java.lang.String dtserver)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_element_user(DTSERVER$2, 0);
            if (target == null)
            {
                target = (org.apache.xmlbeans.SimpleValue)get_store().add_element_user(DTSERVER$2);
            }
            target.setStringValue(dtserver);
        }
    }
    
    /**
     * Sets (as xml) the "DTSERVER" element
     */
    public void xsetDTSERVER(net.ofx.types.x2003.x04.DateTimeType dtserver)
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.DateTimeType target = null;
            target = (net.ofx.types.x2003.x04.DateTimeType)get_store().find_element_user(DTSERVER$2, 0);
            if (target == null)
            {
                target = (net.ofx.types.x2003.x04.DateTimeType)get_store().add_element_user(DTSERVER$2);
            }
            target.set(dtserver);
        }
    }
    
    /**
     * Gets the "USERKEY" element
     */
    public java.lang.String getUSERKEY()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_element_user(USERKEY$4, 0);
            if (target == null)
            {
                return null;
            }
            return target.getStringValue();
        }
    }
    
    /**
     * Gets (as xml) the "USERKEY" element
     */
    public net.ofx.types.x2003.x04.UserKeyType xgetUSERKEY()
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.UserKeyType target = null;
            target = (net.ofx.types.x2003.x04.UserKeyType)get_store().find_element_user(USERKEY$4, 0);
            return target;
        }
    }
    
    /**
     * True if has "USERKEY" element
     */
    public boolean isSetUSERKEY()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().count_elements(USERKEY$4) != 0;
        }
    }
    
    /**
     * Sets the "USERKEY" element
     */
    public void setUSERKEY(java.lang.String userkey)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_element_user(USERKEY$4, 0);
            if (target == null)
            {
                target = (org.apache.xmlbeans.SimpleValue)get_store().add_element_user(USERKEY$4);
            }
            target.setStringValue(userkey);
        }
    }
    
    /**
     * Sets (as xml) the "USERKEY" element
     */
    public void xsetUSERKEY(net.ofx.types.x2003.x04.UserKeyType userkey)
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.UserKeyType target = null;
            target = (net.ofx.types.x2003.x04.UserKeyType)get_store().find_element_user(USERKEY$4, 0);
            if (target == null)
            {
                target = (net.ofx.types.x2003.x04.UserKeyType)get_store().add_element_user(USERKEY$4);
            }
            target.set(userkey);
        }
    }
    
    /**
     * Unsets the "USERKEY" element
     */
    public void unsetUSERKEY()
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_element(USERKEY$4, 0);
        }
    }
    
    /**
     * Gets the "TSKEYEXPIRE" element
     */
    public java.lang.String getTSKEYEXPIRE()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_element_user(TSKEYEXPIRE$6, 0);
            if (target == null)
            {
                return null;
            }
            return target.getStringValue();
        }
    }
    
    /**
     * Gets (as xml) the "TSKEYEXPIRE" element
     */
    public net.ofx.types.x2003.x04.DateTimeType xgetTSKEYEXPIRE()
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.DateTimeType target = null;
            target = (net.ofx.types.x2003.x04.DateTimeType)get_store().find_element_user(TSKEYEXPIRE$6, 0);
            return target;
        }
    }
    
    /**
     * True if has "TSKEYEXPIRE" element
     */
    public boolean isSetTSKEYEXPIRE()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().count_elements(TSKEYEXPIRE$6) != 0;
        }
    }
    
    /**
     * Sets the "TSKEYEXPIRE" element
     */
    public void setTSKEYEXPIRE(java.lang.String tskeyexpire)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_element_user(TSKEYEXPIRE$6, 0);
            if (target == null)
            {
                target = (org.apache.xmlbeans.SimpleValue)get_store().add_element_user(TSKEYEXPIRE$6);
            }
            target.setStringValue(tskeyexpire);
        }
    }
    
    /**
     * Sets (as xml) the "TSKEYEXPIRE" element
     */
    public void xsetTSKEYEXPIRE(net.ofx.types.x2003.x04.DateTimeType tskeyexpire)
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.DateTimeType target = null;
            target = (net.ofx.types.x2003.x04.DateTimeType)get_store().find_element_user(TSKEYEXPIRE$6, 0);
            if (target == null)
            {
                target = (net.ofx.types.x2003.x04.DateTimeType)get_store().add_element_user(TSKEYEXPIRE$6);
            }
            target.set(tskeyexpire);
        }
    }
    
    /**
     * Unsets the "TSKEYEXPIRE" element
     */
    public void unsetTSKEYEXPIRE()
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_element(TSKEYEXPIRE$6, 0);
        }
    }
    
    /**
     * Gets the "LANGUAGE" element
     */
    public net.ofx.types.x2003.x04.LanguageEnum.Enum getLANGUAGE()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_element_user(LANGUAGE$8, 0);
            if (target == null)
            {
                return null;
            }
            return (net.ofx.types.x2003.x04.LanguageEnum.Enum)target.getEnumValue();
        }
    }
    
    /**
     * Gets (as xml) the "LANGUAGE" element
     */
    public net.ofx.types.x2003.x04.LanguageEnum xgetLANGUAGE()
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.LanguageEnum target = null;
            target = (net.ofx.types.x2003.x04.LanguageEnum)get_store().find_element_user(LANGUAGE$8, 0);
            return target;
        }
    }
    
    /**
     * Sets the "LANGUAGE" element
     */
    public void setLANGUAGE(net.ofx.types.x2003.x04.LanguageEnum.Enum language)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_element_user(LANGUAGE$8, 0);
            if (target == null)
            {
                target = (org.apache.xmlbeans.SimpleValue)get_store().add_element_user(LANGUAGE$8);
            }
            target.setEnumValue(language);
        }
    }
    
    /**
     * Sets (as xml) the "LANGUAGE" element
     */
    public void xsetLANGUAGE(net.ofx.types.x2003.x04.LanguageEnum language)
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.LanguageEnum target = null;
            target = (net.ofx.types.x2003.x04.LanguageEnum)get_store().find_element_user(LANGUAGE$8, 0);
            if (target == null)
            {
                target = (net.ofx.types.x2003.x04.LanguageEnum)get_store().add_element_user(LANGUAGE$8);
            }
            target.set(language);
        }
    }
    
    /**
     * Gets the "DTPROFUP" element
     */
    public java.lang.String getDTPROFUP()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_element_user(DTPROFUP$10, 0);
            if (target == null)
            {
                return null;
            }
            return target.getStringValue();
        }
    }
    
    /**
     * Gets (as xml) the "DTPROFUP" element
     */
    public net.ofx.types.x2003.x04.DateTimeType xgetDTPROFUP()
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.DateTimeType target = null;
            target = (net.ofx.types.x2003.x04.DateTimeType)get_store().find_element_user(DTPROFUP$10, 0);
            return target;
        }
    }
    
    /**
     * True if has "DTPROFUP" element
     */
    public boolean isSetDTPROFUP()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().count_elements(DTPROFUP$10) != 0;
        }
    }
    
    /**
     * Sets the "DTPROFUP" element
     */
    public void setDTPROFUP(java.lang.String dtprofup)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_element_user(DTPROFUP$10, 0);
            if (target == null)
            {
                target = (org.apache.xmlbeans.SimpleValue)get_store().add_element_user(DTPROFUP$10);
            }
            target.setStringValue(dtprofup);
        }
    }
    
    /**
     * Sets (as xml) the "DTPROFUP" element
     */
    public void xsetDTPROFUP(net.ofx.types.x2003.x04.DateTimeType dtprofup)
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.DateTimeType target = null;
            target = (net.ofx.types.x2003.x04.DateTimeType)get_store().find_element_user(DTPROFUP$10, 0);
            if (target == null)
            {
                target = (net.ofx.types.x2003.x04.DateTimeType)get_store().add_element_user(DTPROFUP$10);
            }
            target.set(dtprofup);
        }
    }
    
    /**
     * Unsets the "DTPROFUP" element
     */
    public void unsetDTPROFUP()
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_element(DTPROFUP$10, 0);
        }
    }
    
    /**
     * Gets the "DTACCTUP" element
     */
    public java.lang.String getDTACCTUP()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_element_user(DTACCTUP$12, 0);
            if (target == null)
            {
                return null;
            }
            return target.getStringValue();
        }
    }
    
    /**
     * Gets (as xml) the "DTACCTUP" element
     */
    public net.ofx.types.x2003.x04.DateTimeType xgetDTACCTUP()
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.DateTimeType target = null;
            target = (net.ofx.types.x2003.x04.DateTimeType)get_store().find_element_user(DTACCTUP$12, 0);
            return target;
        }
    }
    
    /**
     * True if has "DTACCTUP" element
     */
    public boolean isSetDTACCTUP()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().count_elements(DTACCTUP$12) != 0;
        }
    }
    
    /**
     * Sets the "DTACCTUP" element
     */
    public void setDTACCTUP(java.lang.String dtacctup)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_element_user(DTACCTUP$12, 0);
            if (target == null)
            {
                target = (org.apache.xmlbeans.SimpleValue)get_store().add_element_user(DTACCTUP$12);
            }
            target.setStringValue(dtacctup);
        }
    }
    
    /**
     * Sets (as xml) the "DTACCTUP" element
     */
    public void xsetDTACCTUP(net.ofx.types.x2003.x04.DateTimeType dtacctup)
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.DateTimeType target = null;
            target = (net.ofx.types.x2003.x04.DateTimeType)get_store().find_element_user(DTACCTUP$12, 0);
            if (target == null)
            {
                target = (net.ofx.types.x2003.x04.DateTimeType)get_store().add_element_user(DTACCTUP$12);
            }
            target.set(dtacctup);
        }
    }
    
    /**
     * Unsets the "DTACCTUP" element
     */
    public void unsetDTACCTUP()
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_element(DTACCTUP$12, 0);
        }
    }
    
    /**
     * Gets the "FI" element
     */
    public net.ofx.types.x2003.x04.FinancialInstitution getFI()
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.FinancialInstitution target = null;
            target = (net.ofx.types.x2003.x04.FinancialInstitution)get_store().find_element_user(FI$14, 0);
            if (target == null)
            {
                return null;
            }
            return target;
        }
    }
    
    /**
     * True if has "FI" element
     */
    public boolean isSetFI()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().count_elements(FI$14) != 0;
        }
    }
    
    /**
     * Sets the "FI" element
     */
    public void setFI(net.ofx.types.x2003.x04.FinancialInstitution fi)
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.FinancialInstitution target = null;
            target = (net.ofx.types.x2003.x04.FinancialInstitution)get_store().find_element_user(FI$14, 0);
            if (target == null)
            {
                target = (net.ofx.types.x2003.x04.FinancialInstitution)get_store().add_element_user(FI$14);
            }
            target.set(fi);
        }
    }
    
    /**
     * Appends and returns a new empty "FI" element
     */
    public net.ofx.types.x2003.x04.FinancialInstitution addNewFI()
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.FinancialInstitution target = null;
            target = (net.ofx.types.x2003.x04.FinancialInstitution)get_store().add_element_user(FI$14);
            return target;
        }
    }
    
    /**
     * Unsets the "FI" element
     */
    public void unsetFI()
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_element(FI$14, 0);
        }
    }
    
    /**
     * Gets the "SESSCOOKIE" element
     */
    public java.lang.String getSESSCOOKIE()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_element_user(SESSCOOKIE$16, 0);
            if (target == null)
            {
                return null;
            }
            return target.getStringValue();
        }
    }
    
    /**
     * Gets (as xml) the "SESSCOOKIE" element
     */
    public net.ofx.types.x2003.x04.SessionCookieType xgetSESSCOOKIE()
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.SessionCookieType target = null;
            target = (net.ofx.types.x2003.x04.SessionCookieType)get_store().find_element_user(SESSCOOKIE$16, 0);
            return target;
        }
    }
    
    /**
     * True if has "SESSCOOKIE" element
     */
    public boolean isSetSESSCOOKIE()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().count_elements(SESSCOOKIE$16) != 0;
        }
    }
    
    /**
     * Sets the "SESSCOOKIE" element
     */
    public void setSESSCOOKIE(java.lang.String sesscookie)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_element_user(SESSCOOKIE$16, 0);
            if (target == null)
            {
                target = (org.apache.xmlbeans.SimpleValue)get_store().add_element_user(SESSCOOKIE$16);
            }
            target.setStringValue(sesscookie);
        }
    }
    
    /**
     * Sets (as xml) the "SESSCOOKIE" element
     */
    public void xsetSESSCOOKIE(net.ofx.types.x2003.x04.SessionCookieType sesscookie)
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.SessionCookieType target = null;
            target = (net.ofx.types.x2003.x04.SessionCookieType)get_store().find_element_user(SESSCOOKIE$16, 0);
            if (target == null)
            {
                target = (net.ofx.types.x2003.x04.SessionCookieType)get_store().add_element_user(SESSCOOKIE$16);
            }
            target.set(sesscookie);
        }
    }
    
    /**
     * Unsets the "SESSCOOKIE" element
     */
    public void unsetSESSCOOKIE()
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_element(SESSCOOKIE$16, 0);
        }
    }
}
